import { defineConfig } from 'eslint/config';
import globals from 'globals';
import js from '@eslint/js';
import pluginVue from 'eslint-plugin-vue';
import skipFormatting from '@vue/eslint-config-prettier/skip-formatting';

export default defineConfig({
  // 指定需要 lint 的文件
  files: ['**/*.{js,mjs,jsx,vue}'],

  // 忽略的文件或目录
  ignorePatterns: ['**/dist/**', '**/dist-ssr/**', '**/coverage/**'],

  // 语言选项（如全局变量）
  languageOptions: {
    globals: {
      ...globals.browser,
    },
  },

  // 使用 ESLint 推荐的 JavaScript 规则
  extends: [
    js.configs.recommended,
    // Vue 3 官方规则
    'plugin:vue/vue3-recommended',
    // Prettier 格式化兼容（跳过冲突规则）
    skipFormatting,
  ],

  // 插件配置
  plugins: ['vue'],
});